const list = [1, 2, 3]

const square = (num) => {
	return new Promise((resolve, reject) => {
		setTimeout(() => {
			resolve(num * num)
		},1000)
	})
}

// list.forEach(async x => {
// 	const res = await square(x)
// 	console.log(res)
// })

/**
 * 1. 代码运行后会输出什么结果？请写出来
 * 2. 如果希望每隔 1s 输出一个结果，应该怎么改？请修改里面的代码
 */

 let index = 0

 // 递归实现
 const test = async function test() {
	 if(index >= list.length) return
	 const result = await square(list[index++])
	 console.log(result)
	 test()
 }
 
 test()